package model;

public class Pion extends AbstractPiece implements Pions{

	public Pion(String name, Couleur couleur, Coord coord) {
		super(name, couleur, coord);
	}

	@Override
	public boolean isMoveDiagOk(int xFinal, int yFinal) {
		if(this.isBouger(xFinal, yFinal)){
			if(couleur == Couleur.BLANC){
				if((coord.y - 1) == yFinal && ((coord.x-1) == xFinal || (coord.x+1) == xFinal)){
					return true;
				}
					
			}else if(couleur == Couleur.NOIR){
				if((coord.y + 1) == yFinal && ((coord.x-1) == xFinal || (coord.x+1) == xFinal)){
					return true;
				}
			}
			
		}
		return false;
	}

	@Override
	public boolean isMoveOk(int xFinal, int yFinal) {
		if(this.isBouger(xFinal, yFinal)){
			if(couleur == Couleur.BLANC){
				//Si le pion est à sa place initiale 
				if(coord.y == 6){
					if((yFinal == 5 || yFinal == 4) && coord.x == xFinal)
						return true;
				}else{
					if((coord.y - 1) == yFinal && coord.x == xFinal)
						return true;
				}
			}else if(couleur == Couleur.NOIR){
				//Si le pion est à sa place initiale 
				if(coord.y == 1){
					if((yFinal == 2 || yFinal == 3) && coord.x == xFinal)
						return true;
				}else{
					if((coord.y + 1) == yFinal && coord.x == xFinal)
						return true;
				}
			}
			return isMoveDiagOk(xFinal, yFinal);			
		}
		return false;
	}

}
